package com.lanp.gencode.apifox.model;

import com.alibaba.fastjson.PropertyNamingStrategy;
import com.alibaba.fastjson.annotation.JSONType;
import com.fasterxml.jackson.databind.annotation.JsonNaming;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.List;

/**
 * @author JiangPeng
 * Created with IntelliJ IDEA.
 * Description:  大客户返点协议相应类
 * Date: 2024-02-18 11:50:15
 */
@Data
@NoArgsConstructor
@JSONType(naming = PropertyNamingStrategy.SnakeCase)
@JsonNaming(com.fasterxml.jackson.databind.PropertyNamingStrategy.SnakeCaseStrategy.class)
public class BigCustomRebateAgreementPo {
    /**
     * 大客户返点协议id
     */
    private Long rebateAgreementId;

    /**
     * 大客户返点协议编号
     */
    private String rebateAgreementCode;

    /**
     * 协议名称
     */
    private String name;

    /**
     * 协议状态：已失效=0;已创建=1;生效中=2;已作废=-1;冻结中=-2;
     */
    private Short rebateStatus;

    /**
     * 生效开始时间
     */
    private Long startTime;

    /**
     * 生效结束时间
     */
    private Long endTime;

    /**
     * 大客户商家ID
     */
    private Long customCompanyId;

    /**
     * 大客户商家名称
     */
    private String customCompanyName;

    /**
     * 大客户企业ID
     */
    private Long customEnterpriseId;

    /**
     * 大客户企业名称
     */
    private String customEnterpriseName;

    /**
     * 大B商家ID
     */
    private Long companyId;

    /**
     * 大B商家名称
     */
    private String companyName;

    /**
     * 大B企业ID
     */
    private Long enterpriseId;

    /**
     * 大B企业名称
     */
    private String enterpriseName;

    /**
     * 创建人
     */
    private String createUser;

    /**
     * 编辑人
     */
    private String modUser;

    /**
     * 删除人
     */
    private String delUser;

    /**
     * 创建时间
     */
    private Long createTime;

    /**
     * 编辑时间
     */
    private Long modTime;

    /**
     * 删除时间
     */
    private Long delTime;

    /**
     * 生效时间
     */
    private Long validTime;

    /**
     * 失效时间
     */
    private Long invalidTime;

    /**
     * 作废时间
     */
    private Long zuofeiTime;

    /**
     * 冻结时间
     */
    private Long freezeTime;

    /**
     * 是否有效 1=有效 0=已删除
     */
    private Boolean available;
    /**
     * 子协议列表
     */
    private List<BigCustomRebateAgreementChildPo> childList;
}